package com.hyyt.shopjsp.wxmg.basicInfo.service.imp;

import com.hyyt.shopjsp.wxmg.basicInfo.dao.WxGlobalReturnCodeDAO;
import com.hyyt.shopjsp.wxmg.basicInfo.pojo.WxGlobalReturnCode;
import com.hyyt.shopjsp.wxmg.basicInfo.service.IWxGlobalReturnCodeService;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.Collection;
import java.util.List;
import java.util.Map;

/**
 * @author Administrator on 2017/8/6.
 */
@Service
public class WxGlobalReturnCodeService implements IWxGlobalReturnCodeService{
    private static  final Logger logger = Logger.getLogger(WxGlobalReturnCodeService.class);
    
    @Resource
    private WxGlobalReturnCodeDAO wxGlobalReturnCodeDAO;

    /**
     * 保存WX_全局返回码
     *
     * @param wxGlobalReturnCode WX_全局返回码
     * @return 保存后的WX_全局返回码
     */
    @Override
    public void saveWxGlobalReturnCode(WxGlobalReturnCode wxGlobalReturnCode) {
        wxGlobalReturnCodeDAO.insert(wxGlobalReturnCode);
    }

    /**
     * 更新WX_全局返回码
     *
     * @param wxGlobalReturnCode WX_全局返回码
     * @return 更新后的WX_全局返回码
     */
    @Override
    public void updateWxGlobalReturnCode(WxGlobalReturnCode wxGlobalReturnCode) {
        wxGlobalReturnCodeDAO.update(wxGlobalReturnCode);
    }

    /**
     * 删除指定ID的WX_全局返回码
     *
     * @param id WX_全局返回码ID
     */
    @Override
    public void deleteWxGlobalReturnCode(Integer id) {
        wxGlobalReturnCodeDAO.delete(id);
    }

    /**
     * 删除指定ID集合的WX_全局返回码
     *
     * @param ids WX_全局返回码ID集合
     */
    @Override
    public void deleteWxGlobalReturnCode(Collection<Integer> ids) {
        wxGlobalReturnCodeDAO.batchDelete(ids);
    }

    /**
     * 根据ID加载一个WX_全局返回码
     *
     * @param id WX_全局返回码ID
     * @return WX_全局返回码
     */
    @Override
    public WxGlobalReturnCode loadWxGlobalReturnCode(Integer id) {
        return wxGlobalReturnCodeDAO.load(id);
    }

    /**
     * 查询所有的WX_全局返回码，通常有最多取30000条记录的限制
     *
     * @return 所有的WX_全局返回码，通常有最多取30000条记录的限制
     */
    @Override
    public List<WxGlobalReturnCode> queryAllWxGlobalReturnCode() {
        return wxGlobalReturnCodeDAO.queryAll();
    }

    /**
     * 查询WX_全局返回码
     *
     * @param params 查询参数，为key-value形式
     * @return WX_全局返回码集合
     */
    @Override
    public List<WxGlobalReturnCode> queryWxGlobalReturnCode(Map<String, Object> params) {
        return wxGlobalReturnCodeDAO.query(params);
    }

    /**
     * 查询WX_全局返回码
     *
     * @param params   查询参数，没有则传null,分页参数key为“sortColumns”
     * @param startRow 起始行数（不含起始行的数据）
     * @param rowSize  要查询记录数
     * @return WX_全局返回码集合
     */
    @Override
    public List<WxGlobalReturnCode> queryWxGlobalReturnCode(Map<String, Object> params, int startRow, int rowSize) {
        return wxGlobalReturnCodeDAO.query(params,startRow,rowSize);
    }

    /**
     * 统计WX_全局返回码
     *
     * @param params 查询参数，没有则传null,分页参数key为“sortColumns”
     * @return 结果集记录数
     */
    @Override
    public int countWxGlobalReturnCode(Map<String, Object> params) {
        return wxGlobalReturnCodeDAO.count(params);
    }
}
